import JSZip from 'jszip'
import FileSaver from 'file-saver'
function getFile(url){
      return new Promise((resolve, reject) => {
        axios({
          method:'get',
          url,
          responseType: 'arraybuffer'
        }).then(data => {
          resolve(data.data)
        }).catch(error => {
          reject(error.toString())
        })
      })
    };
// 批量下载
export function handleBatchDownload (selectImgList,zip_name){
      const data = selectImgList;
      const zip = new JSZip();
      const cache = {}
      const promises = []
      data.forEach(item => {
        console.log(item);
          const promise = getFile(item).then(data => { // 下载文件, 并存成ArrayBuffer对象
          const arr_name = item.split("/");
          let file_name = arr_name[arr_name.length - 1] // 获取文件名
          zip.file(file_name, data, {
            binary: true
          }) // 逐个添加文件
          cache[file_name] = data
        })
        promises.push(promise)
      })
      Promise.all(promises).then(() => {
        zip.generateAsync({
          type: "blob"
        }).then(content => { // 生成二进制流
          FileSaver.saveAs(content, zip_name) // 利用file-saver保存文件
        })
      })

};
